package sohsite.pelada.pelada;

import java.util.Collection;

import org.hibernate.Criteria;
import org.hibernate.Session;
import org.hibernate.criterion.Restrictions;

import sohsite.excecao.EntradaInexistenteException;
import sohsite.util.Conexao;
import sohsite.util.generico.RepositorioGenerico;

public class RepositorioPeladaHbm extends RepositorioGenerico<Pelada> implements IRepositorioPelada {

	public RepositorioPeladaHbm() {
		super(Pelada.class);
	}

	@SuppressWarnings("unchecked")
	public Collection<Pelada> consultarPeladasPorNome(String nomePelada) throws EntradaInexistenteException {
		Collection<Pelada> peladas = null;
		Session sessao = Conexao.encontrarSessao();
		Criteria consulta = sessao.createCriteria(Pelada.class);
		consulta.add(Restrictions.like("nome", nomePelada + "%"));
		peladas = consulta.list();
		
		if(peladas.isEmpty())
			throw new EntradaInexistenteException();
		
		return peladas;
	}

	
}
